#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <QMainWindow>
#include <QtWidgets/QMainWindow>
#include <QSplitter>
#include <QtWidgets>
#include <QLabel>
#include <QImage>
#include "view_window.h"
#include "qviewimage.h"
#include "jsonfile.h"
namespace Ui {
class MainWindow;
}

class MainWindow : public QMainWindow
{
    Q_OBJECT

public:
    explicit MainWindow(QWidget *parent = 0);
    ~MainWindow();

private:
    Ui::MainWindow *ui;
    ViewWindow *point_cloud_viewer_;
    QViewImage *image_viewer_;
    QSplitter *m_splitter_main_;
    JsonFile *mJsonFile;
    QString mFilePath;


    void initUi();
    bool getExistFileTypeName(const QString path, const QString type, QString& fullFileName);


private slots:

    void slotOpenFile();
    void slotVirtualWall();
    void slotForbiddenZone();
    void slotDefautView2D();
    void slotPan();
    void slotRecvData(QVector<QVector<QPointF>> vec, int w, int h);
    void slotSaveData();
};

#endif // MAINWINDOW_H
